package com.hunter.download;

import java.io.File;

/**
 * @author SnowDragon
 * @date 2022/1/6
 * @since v1.0.0
 * Description:
 */
public interface DownLoadListener {
    /**
     * 开始下载
     */
    void onStart();

    /**
     * @param totalLength      总大小
     * @param downloadedLength 下载大小
     */
    void onProgress(long totalLength, long downloadedLength);

    /**
     * 下载完成
     *
     * @param url  下载地址
     * @param path 下载路径
     */
    void onComplete(String url, File path);

    /**
     * 下载失败
     * @param throwable
     */
    void onError(Throwable throwable);
}
